]> dgit.raspbian.org Git - gnome-shell.git/log
gnome-shell.git
2 years agologinDialog: On login, allow logout a conflicting session
Joan Torres [Wed, 7 Feb 2024 12:05:17 +0000 (13:05 +0100)]
loginDialog: On login, allow logout a conflicting session

When opening a session, find if there's already a session opened for the
same user with the help of Loginmanager.
When it's found, display the conflicting session dialog.

The logout dialog allows shutting down the conflicting session using the
greeter dbus method "StopConflictingSession".

If the dialog is already opened and the conflicting session has been
closed on its side, the new session will start.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3134>

2 years agologinDialog: Add ConflictingSessionDialog
Joan Torres [Wed, 7 Feb 2024 12:03:11 +0000 (13:03 +0100)]
loginDialog: Add ConflictingSessionDialog

This dialog will be used by the next commit when a session is being opened but
there's already a conflicting session opened.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3134>

2 years agologinManager: Add session-removed signal and getSession method
Joan Torres [Wed, 7 Feb 2024 11:59:09 +0000 (12:59 +0100)]
loginManager: Add session-removed signal and getSession method

These changes will be used by the next commit when displaying a
conflicting session dialog.

session-removed signal will be used to close the conflicting session dialog
if it's not needed anymore.

getSession method will be used when a session is opened, to check if
there's already a conflicting opened session.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3134>

2 years agoUpdate Occitan translation
Quentin PAGÈS [Thu, 29 Feb 2024 20:32:34 +0000 (20:32 +0000)]
Update Occitan translation

2 years agoextensions-app: Update "translate" URL in metainfo
Florian Müllner [Thu, 29 Feb 2024 15:45:22 +0000 (16:45 +0100)]
extensions-app: Update "translate" URL in metainfo

Instead of pointing to the (about to be retired) wiki, link to
the module page in damned lies.

https://gitlab.gnome.org/GNOME/Initiatives/-/issues/51

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3215>

2 years agogitlab: Replace wiki reference in issue templates
Florian Müllner [Thu, 29 Feb 2024 15:41:37 +0000 (16:41 +0100)]
gitlab: Replace wiki reference in issue templates

https://gitlab.gnome.org/GNOME/Initiatives/-/issues/51

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3215>

2 years agodoap: Replace outdated wiki references
Florian Müllner [Thu, 29 Feb 2024 15:28:25 +0000 (16:28 +0100)]
doap: Replace outdated wiki references

Use the gitlab project page as homepage, and point to the in-tree
build documentation instead of referencing a script that has been
outdated for years.

https://gitlab.gnome.org/GNOME/Initiatives/-/issues/51

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3215>

2 years agodoc: Replace wiki reference in man page
Florian Müllner [Thu, 29 Feb 2024 15:21:05 +0000 (16:21 +0100)]
doc: Replace wiki reference in man page

The wiki will be retired, so point to the project README instead.

https://gitlab.gnome.org/GNOME/Initiatives/-/issues/51

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3215>

2 years agodata: Replace wiki reference in gschema
Florian Müllner [Thu, 29 Feb 2024 15:19:08 +0000 (16:19 +0100)]
data: Replace wiki reference in gschema

We now document looking glass in-tree, so point to that.

https://gitlab.gnome.org/GNOME/Initiatives/-/issues/51

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3215>

2 years agoUpdate German translation
Philipp Kiemle [Thu, 29 Feb 2024 16:42:49 +0000 (16:42 +0000)]
Update German translation

2 years agokeyboard: Add "url" keyboard for URL typing
Carlos Garnacho [Sat, 3 Feb 2024 16:42:48 +0000 (17:42 +0100)]
keyboard: Add "url" keyboard for URL typing

This is basically an english keyboard, with some helper
keys to help typing URLs.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3162>

2 years agokeyboard: Add "email" OSK variant for EMAIL purpose hint
Carlos Garnacho [Sat, 3 Feb 2024 10:35:28 +0000 (11:35 +0100)]
keyboard: Add "email" OSK variant for EMAIL purpose hint

Not too fancy at the moment, just an "us" keymap, with the emoji
key replaced by '@'. Can be improved in the future.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3162>

2 years agokeyboard: Forward/handle content hints
Carlos Garnacho [Tue, 30 Jan 2024 12:53:03 +0000 (13:53 +0100)]
keyboard: Forward/handle content hints

Forward these from the IM, and handle the ones involving
the OSK state: lowercase/uppercase/auto_capitalization/titlecase.
The latter two involve peeking at the surrounding text, to figure
out if it makes sense to toggle keyboard level.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3162>

2 years agoinputMethod: Honor the "private" IBusInputHint
Carlos Garnacho [Tue, 30 Jan 2024 12:51:59 +0000 (13:51 +0100)]
inputMethod: Honor the "private" IBusInputHint

This enum value was added in IBus 1.5.26, forward our own
"sensitive data" enum that way to the IMs.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3162>

2 years agoibusManager: Avoid changes to ibus-typing-booster configuration
Carlos Garnacho [Tue, 30 Jan 2024 10:24:56 +0000 (11:24 +0100)]
ibusManager: Avoid changes to ibus-typing-booster configuration

The ibus-typing-booster IM module is already meant to do the "right"
thing when the IBus.Capabilite.OSK hint is passed to the IM. We do
already honor that hint (commit 23bfd08b3c9), and ibus-typing-booster
has been doing this for a reasonably long time (first release seems
to be 2.19.9 dated 2 years ago, current is 2.24.12).

Drop this mangling of foreign settings, and let ibus-typing-booster
figure out the optimal configuration given the presence of an OSK.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3162>

2 years agokeyboard: Refactor 'commit' action handling
Carlos Garnacho [Tue, 30 Jan 2024 10:08:52 +0000 (11:08 +0100)]
keyboard: Refactor 'commit' action handling

Move the complex parts of this mechanism from the Keyboard object
to the KeyboardController object, replaced by code that is easier to
follow.

Also, keyval guessing is deferred to a later point in the commit
procedure so so it does not happen for a single character only,
this way we can send multi-character input through the IM, which
is necessary for some OSK layouts.

Closes: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/7190
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3162>

2 years agokeyboard: Separate keyval action notification
Carlos Garnacho [Tue, 30 Jan 2024 09:59:14 +0000 (10:59 +0100)]
keyboard: Separate keyval action notification

Add a distinct signal for keys defining a keyval to have it handled
via event emulation.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3162>

2 years agokeyboard: Support OSK layout modes explicitly
Carlos Garnacho [Mon, 29 Jan 2024 14:44:38 +0000 (15:44 +0100)]
keyboard: Support OSK layout modes explicitly

We only support "latched" which stays toggled on for a single
character unless long-pressed. Support "default" mode explicitly
to switch back to the default level, leaving "locked" implicitly
supported as the way to stay in the same level.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3162>

2 years agokeyboard: Close keyboard immediately on Clutter.InputPanelState.OFF
Carlos Garnacho [Sat, 27 Jan 2024 13:26:05 +0000 (14:26 +0100)]
keyboard: Close keyboard immediately on Clutter.InputPanelState.OFF

This is already covered by a timeout to handle focus transitions between
windows at the Clutter.InputMethod implementation, we can react immediately
and avoid chaining up timeouts.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3162>

2 years agokeyboard: Close keyboard immediately on user interaction
Carlos Garnacho [Sat, 27 Jan 2024 13:25:03 +0000 (14:25 +0100)]
keyboard: Close keyboard immediately on user interaction

When the user presses the hide button, the rest timeout feels
like lag in that case. Avoid it in that case.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3162>

2 years agokeyboard: Make emoji "hide keyboard" key icon consistent
Carlos Garnacho [Sat, 27 Jan 2024 13:21:05 +0000 (14:21 +0100)]
keyboard: Make emoji "hide keyboard" key icon consistent

It was stuck with an older icon, we've gained a specific icon
for this action since.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3162>

2 years agokeyboard: Simplify KeyContainer
Carlos Garnacho [Sat, 27 Jan 2024 13:18:47 +0000 (14:18 +0100)]
keyboard: Simplify KeyContainer

We no longer have any guesswork during layout creation,
we can attach key actors directly to the grid without a second
step.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3162>

2 years agokeyboard: Move backspace key handling to KeyboardController
Carlos Garnacho [Fri, 26 Jan 2024 23:11:15 +0000 (00:11 +0100)]
keyboard: Move backspace key handling to KeyboardController

Move the more action-y code to the controller, and let the Keyboard
object command it.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3162>

2 years agokeyboard: Minor refactor
Carlos Garnacho [Fri, 26 Jan 2024 19:29:33 +0000 (20:29 +0100)]
keyboard: Minor refactor

This small function is just called from a single place,
drop it.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3162>

2 years agokeyboard: Drop dead code
Carlos Garnacho [Fri, 26 Jan 2024 19:25:02 +0000 (20:25 +0100)]
keyboard: Drop dead code

This getGroups() method was not called anywhere for
a long time, the last user was dropped at commit
8fdf47ea5b ("keyboard: Do not create widgetry for
all keyboard groups at once").

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3162>

2 years agokeyboard: Simplify group change emission at KeyboardController
Carlos Garnacho [Fri, 26 Jan 2024 19:22:14 +0000 (20:22 +0100)]
keyboard: Simplify group change emission at KeyboardController

Since we now just store the current group, we do not need to track
closely source changes vs selection changes in the available sources.
We just re-generate the current OSK keymap for all, so coalesce both
signals into a more generic "group-changed".

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3162>

2 years agokeyboard: Honor emoji-visible through input hints
Carlos Garnacho [Fri, 26 Jan 2024 18:54:39 +0000 (19:54 +0100)]
keyboard: Honor emoji-visible through input hints

And fix it so it is effective again. This is a small piece of
smarts the code needs to earn, so that keys with the "emoji"
action are hidden, and their width assigned to the next key.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3162>

2 years agokeyboard: Refer to levels by name instead of index
Carlos Garnacho [Fri, 26 Jan 2024 18:12:11 +0000 (19:12 +0100)]
keyboard: Refer to levels by name instead of index

And drop some more guesswork in the code, since some layouts have
less than 4 levels. This also allows for having OSK maps with more
than 4 levels. Let us hope that the sanity of our future kin will
remain below that threshold.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3162>

2 years agokeyboard: Handle number/phone input purposes specifically
Carlos Garnacho [Fri, 26 Jan 2024 17:51:14 +0000 (18:51 +0100)]
keyboard: Handle number/phone input purposes specifically

Add OSK keymaps for these, with the special keys necessary to
type numbers(positive, negative, fractional, ...) and phone numbers
(with */+/#)

Closes: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/6550
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3162>

2 years agokeyboard: Replace Keypad object with a "digits" JSON OSK keymap
Carlos Garnacho [Fri, 26 Jan 2024 17:04:18 +0000 (18:04 +0100)]
keyboard: Replace Keypad object with a "digits" JSON OSK keymap

Drop some code, in favor of a numeric keypad that is driven through
the same JSON-based maps. This is also a first use of the "height"
key property in the JSON files, for the Enter key.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3162>

2 years agokeyboard: Figure out keypad visibility through purpose hints
Carlos Garnacho [Fri, 26 Jan 2024 17:00:51 +0000 (18:00 +0100)]
keyboard: Figure out keypad visibility through purpose hints

Drop the keypad-visible KeyController signal, and figure it out
through the already notified purpose hint.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3162>

2 years agokeyboard: Allow for terminal variants in specific languages
Carlos Garnacho [Fri, 26 Jan 2024 16:42:52 +0000 (17:42 +0100)]
keyboard: Allow for terminal variants in specific languages

Do not hardcode the us-terminal OSK keymap, and append '-extended'
to the current group name, accounting with the existing 'us' fallback.
This allows for concerned individuals to propose language-specific
terminal layouts.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3162>

2 years agokeyboard: Keep OSK widgetry for a single group
Carlos Garnacho [Fri, 26 Jan 2024 16:20:00 +0000 (17:20 +0100)]
keyboard: Keep OSK widgetry for a single group

Keep enough widgetry in memory for just the current group,
this means we more eagerly destroy and re-create actors on
language changes.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3162>

2 years agokeyboard: Handle extended keyboards through TERMINAL input purpose
Carlos Garnacho [Fri, 26 Jan 2024 15:32:19 +0000 (16:32 +0100)]
keyboard: Handle extended keyboards through TERMINAL input purpose

Drop the channeling of this specific signal from the InputMethod, and
update the OSK Keyboard object to using the purpose hint to find out
whether a extended keymap is necessary.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3162>

2 years agokeyboard: Forward input purpose from KeyboardController
Carlos Garnacho [Fri, 26 Jan 2024 15:20:30 +0000 (16:20 +0100)]
keyboard: Forward input purpose from KeyboardController

Instead of adding more emoji/keypad signals, forward the input
purpose, so that in future commits the Keyboard object can figure
out the right layout from the purpose hint.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3162>

2 years agokeyboard: Rename function
Carlos Garnacho [Fri, 26 Jan 2024 15:19:58 +0000 (16:19 +0100)]
keyboard: Rename function

Avoid the "ForGroup" suffix, and get the keyboard group implicitly.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3162>

2 years agokeyboard: Minor refactor
Carlos Garnacho [Fri, 26 Jan 2024 15:18:38 +0000 (16:18 +0100)]
keyboard: Minor refactor

Call the _updateKeys() method, instead of inlining it.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3162>

2 years agokeyboard: Add/document "height" optional property
Carlos Garnacho [Fri, 26 Jan 2024 13:25:57 +0000 (14:25 +0100)]
keyboard: Add/document "height" optional property

This will allow OSK descriptions to declare "tall" keys. May be
used in combination with the "start" property added in previous
commits, in case a gap needs to be explicitly left.

No OSK description uses this yet.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3162>

2 years agokeyboard: Add/document "leftOffset" optional property on OSK keys
Carlos Garnacho [Fri, 26 Jan 2024 12:07:00 +0000 (13:07 +0100)]
keyboard: Add/document "leftOffset" optional property on OSK keys

This optional property defines the offset the a key should have
relative to the previous key (on its left) or the start of the
column if it is the first key. If this property is not
present, the key will be placed with no relative offset.

This for example allows keymaps to explicitly define the padding
of the rows that are not "full" relative to other rows, without
guesswork in the code. It is used for this purpose in the
keymaps/levels/rows that needed it.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3162>

2 years agokeyboard: Simplify key width handling
Carlos Garnacho [Fri, 26 Jan 2024 11:02:30 +0000 (12:02 +0100)]
keyboard: Simplify key width handling

We do not need to store the key width in the Key object
itself when constructing the layout, and can attach it
to the grid from the model data right away.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3162>

2 years agokeyboard: Delete selected text on backspace
Sebastian Keller [Fri, 21 Apr 2023 22:05:22 +0000 (00:05 +0200)]
keyboard: Delete selected text on backspace

Previously backspace would only ever remove a single character left of
the cursor, regardless of selection.

This requires the application to correctly set the anchor position in
text_input::set_surrounding_text(), which currently only gtk4 seems to
do. When there is no selection or on other applications that always set
cursor = anchor, like gtk3 does, the behavior is not changed and still
only deletes one character.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2746>

2 years agokeyboard: Fix deleting the previous word
Sebastian Keller [Wed, 21 Feb 2024 14:20:24 +0000 (15:20 +0100)]
keyboard: Fix deleting the previous word

Since mutter@33088d59 the cursor we receive from mutter already is a
character index while the code here still treated it like a byte offset.

Further the code to detect the previous word position was treating the
cursor parameter already like a character index, while passing the
cursor that was prior to that commit a byte offset.

The function also had some unreachable and redundant code paths. The
pos < 0 case can never be reached due to the max(). Also the regex
already ensures that all whitespace is considered, so the code to remove
spaces not actually do anything except when deleting the first word in
the text, in which it would cause the first character to not get
deleted.

Also it was not handling characters with more than 2 bytes correctly. In
the presence of these JS string functions, such as search(), can not be
considered to operate on character indices anymore but rather the number
of UTF-16 byte pairs. Issues with this can be avoided by using
iterators, which unlike anything else iterate on characters, not byte
pairs and by not using the results returned by JS string functions for
anything but JS strings.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2746>

2 years agogdm/util: Reduce the fprintd proxy wait timeout
Marco Trevisan (Treviño) [Tue, 12 Apr 2022 15:05:02 +0000 (17:05 +0200)]
gdm/util: Reduce the fprintd proxy wait timeout

Given that this may lead to the shell to hang on gdm startup, and that
we expect the service to be up and running quickly, we can safely set a
5 seconds timeout instead of using the longer GLib proxy defaults.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2267>

2 years agogdm/util: Use fully async call to setup the fingerprint device proxy
Marco Trevisan (Treviño) [Tue, 12 Apr 2022 15:28:57 +0000 (17:28 +0200)]
gdm/util: Use fully async call to setup the fingerprint device proxy

Since fingerprint service can now be started also if a conversation has
already began, we can also initialize the proxy asynchronously, without
the risk that the service won't be started early enough.

As per this, remove the usage of FprintDeviceProxy wrapper completely
since it's just not giving us anything here.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2267>

2 years agogdm/utils: Pass cancellable to the FPrint Device proxy and avoid signals
Marco Trevisan (Treviño) [Tue, 12 Apr 2022 15:20:58 +0000 (17:20 +0200)]
gdm/utils: Pass cancellable to the FPrint Device proxy and avoid signals

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2267>

2 years agogdm/util: Only start fingerprint service synchronously when it's default
Marco Trevisan (Treviño) [Tue, 12 Apr 2022 14:51:21 +0000 (16:51 +0200)]
gdm/util: Only start fingerprint service synchronously when it's default

On ShellUserVerifier construction we used to start fprintd in a sync
fashion all the times, however in case the daemon had startup failures
or was hanging for whatever reason (like due to devices probing, given
that fprintd synchronously wait for them all to be initialized) we used
to just fail, leaving gdm or the lockscreen in a not usable state.

While this could be prevented with a try/catch statement, there's no
much point to wait for fprintd if that's not the default authentication
service, and so:
 - If we use gdm-fingerprint as default auth method, use a sync call to
   initialize it and in case of failures, just continue with fallback
   authentication mechanism (password)

 - Otherwise, asynchronously initialize fprintd and continue with the
   ShellUserVerifier without fingerprint support until we got a reply.
   In case the service fails to deliver us a result, we don't give up
   but we will try doing that at each authentication via
   _checkForFingerprintReader().
   In case all works properly, as per the previous commit, once the
   initialization is done, we'll start the fingerprint PAM gdm service.

Fixes #5168

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2267>

2 years agojs/gdm/util: Rename fingerprint device into devicePath
Marco Trevisan (Treviño) [Wed, 28 Feb 2024 20:52:55 +0000 (21:52 +0100)]
js/gdm/util: Rename fingerprint device into devicePath

It's just the dbus object path, so let's not be confused by that.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2267>

2 years agogdm/util: Start fingerprint verification once it's available
Marco Trevisan (Treviño) [Tue, 12 Apr 2022 14:38:40 +0000 (16:38 +0200)]
gdm/util: Start fingerprint verification once it's available

If fingerprint service is not replying fast enough to our async request,
authentication is started but the fingerprint service is never started.

So, in case the fingerprint type information is received after that the
authentication has been started, let's start the service.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2267>

2 years agogdm/util: Do not handle fingerprint async errors in call
Marco Trevisan (Treviño) [Tue, 25 Oct 2022 02:47:08 +0000 (04:47 +0200)]
gdm/util: Do not handle fingerprint async errors in call

It's better to do this at caller level so that we have more control of
what to do on errors.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2267>

2 years agogdm/util: Only initialize fingerprint and smart card managers if needed
Marco Trevisan (Treviño) [Tue, 1 Mar 2022 10:57:20 +0000 (11:57 +0100)]
gdm/util: Only initialize fingerprint and smart card managers if needed

There's no point to initialize the fprint proxy and the smartcard
manager if they are disabled in authentication settings, so just avoid
initializing them, but at the same time this implies tracking of user
changes and so:
 - If a new service has been enabled, we initialize it
 - If a service has been disabled we destroy it and reset the
   authentication if such service was currently active

In both cases we do update the default service.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2267>

2 years agogdm/util: Do not use gjs GDBus proxy wrapper for fprint manager
Marco Trevisan (Treviño) [Tue, 25 Oct 2022 01:51:30 +0000 (03:51 +0200)]
gdm/util: Do not use gjs GDBus proxy wrapper for fprint manager

It only adds more complexity, while we can handle it all manually quite
easier now.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2267>

2 years agogdm/util: Restart auth if default service changed
Marco Trevisan (Treviño) [Fri, 21 Oct 2022 17:05:04 +0000 (19:05 +0200)]
gdm/util: Restart auth if default service changed

If a default service changed while the previous one was active we need to
reset the authentication so that we set back to the expected one.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2267>

2 years agogdm/util: Keep track of started services that are currently active
Marco Trevisan (Treviño) [Fri, 21 Oct 2022 15:47:15 +0000 (17:47 +0200)]
gdm/util: Keep track of started services that are currently active

If we have a late activation of a service backend we may need to check
whether it has been already started, and in case it has not, we can try
loading it.

So rely on gdm to see what service has been started, instead of handling
it manually on our side only.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2267>

2 years agogdm/util: Early initialize all internal properties
Marco Trevisan (Treviño) [Fri, 21 Oct 2022 17:09:09 +0000 (19:09 +0200)]
gdm/util: Early initialize all internal properties

These may be used later by methods called by constructors, so ensure
that they're all defined early.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2267>

2 years agowindowMenu: Pass missing argument when starting grab op
Florian Müllner [Wed, 28 Feb 2024 15:00:43 +0000 (16:00 +0100)]
windowMenu: Pass missing argument when starting grab op

The function now requires an additional position-hint argument.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3214>

2 years agopanel: Pass position hint when starting window drag
Florian Müllner [Wed, 28 Feb 2024 14:22:49 +0000 (15:22 +0100)]
panel: Pass position hint when starting window drag

Since mutter@4b1e24fcc, starting a drag op requires an additional
argument, pass it.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3214>

2 years agotheme: Don't give login-dialog another background-color
Daniel van Vugt [Fri, 23 Feb 2024 07:29:56 +0000 (15:29 +0800)]
theme: Don't give login-dialog another background-color

Its parent `lockDialogGroup` has exactly the same background-color
set in the same file. Giving them both the same wasted render time on
overdraw, and caused multi-layer blending artifacts (slight flickering
of the grey background) when the login dialog fades in/out.

While the flicker can also be fixed using `set_offscreen_redirect`,
there's no point adding that overhead when the extra layer doesn't need
to be painted. Removing it halves the average render time of the login
animation.

Closes: https://bugs.launchpad.net/bugs/2036388
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3207>

2 years agostyle: Restore missing insensitive menuitem style
Sam Hewitt [Wed, 28 Feb 2024 14:20:39 +0000 (10:50 -0330)]
style: Restore missing insensitive menuitem style

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3213>

2 years agoFdoNotificationDaemon: Emit ActivationToken before ActionInvoked signal
Julian Sparber [Mon, 19 Feb 2024 16:31:52 +0000 (17:31 +0100)]
FdoNotificationDaemon: Emit ActivationToken before ActionInvoked signal

Two years ago FDO notifications spec gained the ability to pass an
activation token (often called startup id) let's finally implement it.

See: https://gitlab.freedesktop.org/xdg/xdg-specs/-/commit/b9a470004d

Closes: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/358
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3199>

2 years agoGTKNotificationDaemon: Use ShellApp methods to activate apps
Julian Sparber [Thu, 15 Feb 2024 16:41:29 +0000 (17:41 +0100)]
GTKNotificationDaemon: Use ShellApp methods to activate apps

`ShellApp` gained the ability to activated actions and it sets the correct
platform data. Therefore drop the current implementation in favor for it.

Closes: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/7409
Closes: https://gitlab.gnome.org/GNOME/gtk/-/issues/5239
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3198>

2 years agostatus/backgroundApps: Use ShellApp.activate_action() to quit apps
Julian Sparber [Mon, 19 Feb 2024 08:43:56 +0000 (09:43 +0100)]
status/backgroundApps: Use ShellApp.activate_action() to quit apps

`ShellApp` gained the ability to activated actions, therefore drop the current
implementation in favor for it.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3198>

2 years agostatus/network: Use ShellApp.activate_action() to launch settings panel
Julian Sparber [Mon, 19 Feb 2024 08:40:43 +0000 (09:40 +0100)]
status/network: Use ShellApp.activate_action() to launch settings panel

`ShellApp` gained the ability to activated actions and sets the correct
platform data, therefore drop the current implementation in favor for it.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3198>

2 years agoshell/global: Don't force active workspace for launch context
Julian Sparber [Mon, 19 Feb 2024 14:15:48 +0000 (15:15 +0100)]
shell/global: Don't force active workspace for launch context

Since the launch context may also be used to activate an action on an
running application with an already existing window, which we don't
necessarily want to move to a different workspace, don't set a workspace
for the launch context. If no active window exists for an application
then it will be place on the currently active workspace anyways.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3198>

2 years agoshell/app: Add method to activate an action via FDO DBus activation
Julian Sparber [Mon, 19 Feb 2024 08:30:25 +0000 (09:30 +0100)]
shell/app: Add method to activate an action via FDO DBus activation

There are multiple different places where we activate an app action,
but none set the correct activation token. Therefore this adds an async
method to to call `ActivateAction` on `org.freedesktop.Appliaction`
with the correct activation token/startup id as platform data.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3198>

2 years agoUpdate German translation
Jürgen Benvenuti [Mon, 26 Feb 2024 19:58:23 +0000 (19:58 +0000)]
Update German translation

2 years agoci: Rebase image to F40
Florian Müllner [Fri, 23 Feb 2024 15:38:09 +0000 (16:38 +0100)]
ci: Rebase image to F40

After the main image was rebased, let's do the same for our
JS tooling.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3208>

2 years agoci: Don't install entire Development group
Florian Müllner [Fri, 23 Feb 2024 23:00:34 +0000 (00:00 +0100)]
ci: Don't install entire Development group

With dependencies, the group pulls in about 150 packages. We only
need a tiny tiny subset of that, so only specify what we really
need to not blow up the image size unnecessarily.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3208>

2 years agoci: Bump mutter image
Florian Müllner [Fri, 23 Feb 2024 15:36:59 +0000 (16:36 +0100)]
ci: Bump mutter image

The image was rebased to f40, pull that in.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3208>

2 years agoUpdate French translation
Guillaume Bernard [Sun, 25 Feb 2024 10:18:15 +0000 (10:18 +0000)]
Update French translation

2 years agoUpdate Chinese (Taiwan) translation
Chao-Hsiung Liao [Sun, 25 Feb 2024 10:04:30 +0000 (10:04 +0000)]
Update Chinese (Taiwan) translation

2 years agoUpdate Basque translation
Asier Sarasua Garmendia [Sun, 25 Feb 2024 06:42:13 +0000 (06:42 +0000)]
Update Basque translation

2 years agoUpdate Latvian translation
Rūdolfs Mazurs [Sat, 24 Feb 2024 19:44:10 +0000 (19:44 +0000)]
Update Latvian translation

2 years agoUpdate Kazakh translation
Baurzhan Muftakhidinov [Sat, 24 Feb 2024 17:17:43 +0000 (17:17 +0000)]
Update Kazakh translation

2 years agoUpdate Occitan translation
Quentin PAGÈS [Sat, 24 Feb 2024 17:04:35 +0000 (17:04 +0000)]
Update Occitan translation

2 years agoUpdate British English translation
Bruce Cowan [Sat, 24 Feb 2024 16:01:21 +0000 (16:01 +0000)]
Update British English translation

2 years agoUpdate Norwegian Bokmål translation
Brage Fuglseth [Sat, 24 Feb 2024 13:35:25 +0000 (13:35 +0000)]
Update Norwegian Bokmål translation

2 years agoUpdate Catalan translation
Jordi Mas i Hernandez [Fri, 23 Feb 2024 08:37:06 +0000 (08:37 +0000)]
Update Catalan translation

2 years agoUpdate Galician translation
Fran Dieguez [Thu, 22 Feb 2024 18:08:52 +0000 (18:08 +0000)]
Update Galician translation

2 years agoUpdate Chinese (China) translation
Luming Zh [Thu, 22 Feb 2024 15:19:43 +0000 (15:19 +0000)]
Update Chinese (China) translation

2 years agoUpdate Indonesian translation
Kukuh Syafaat [Thu, 22 Feb 2024 13:48:48 +0000 (13:48 +0000)]
Update Indonesian translation

2 years agoUpdate French translation
Irénée THIRION [Thu, 22 Feb 2024 09:31:55 +0000 (09:31 +0000)]
Update French translation

2 years agoUpdate Belarusian translation
Vasil Pupkin [Thu, 22 Feb 2024 00:30:54 +0000 (00:30 +0000)]
Update Belarusian translation

2 years agoUpdate Turkish translation
Sabri Ünal [Wed, 21 Feb 2024 17:25:13 +0000 (17:25 +0000)]
Update Turkish translation

2 years agoshell: Remove left-over function declaration
Florian Müllner [Wed, 21 Feb 2024 15:09:32 +0000 (16:09 +0100)]
shell: Remove left-over function declaration

The function itself was removed in commit 4b80cbe1cd9e back
in 2016.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3206>

2 years agonotificationDaemon: Fix auto-closing FDO notifications
Florian Müllner [Tue, 20 Feb 2024 18:46:19 +0000 (19:46 +0100)]
notificationDaemon: Fix auto-closing FDO notifications

We auto-close FDO notifications when the sender leaves the bus,
given that the protocol was created without persistency in mind
and any action will become invalid.

However that broke when moving the public-facing implementation
into a separate service, as we now track the (always running)
service instead of the original sender.

Fix that by forwarding the sender to the internal implementation
via a private hint, just like we already do for the PID.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3204>

2 years agonotificationDaemon: Namespace private `sender-pid` hint
Florian Müllner [Tue, 20 Feb 2024 18:39:31 +0000 (19:39 +0100)]
notificationDaemon: Namespace private `sender-pid` hint

The hint is a private implementation detail between the public
and internal services, not something anybody else should set
(*cough* libnotify *cough*).

Prefix the name to hopefully make that clearer.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3204>

2 years agoplugin: Stop overriding xevent_filter
Bilal Elmoussaoui [Tue, 20 Feb 2024 13:06:14 +0000 (14:06 +0100)]
plugin: Stop overriding xevent_filter

The vfunc was used to register profiling hooks for glx.swapComplete
as we have sysprof nowadays and as that code path is x11 specific
anyways, let us drop it

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3201>

2 years agoextensions-app: Fix service activation mix-up
Florian Müllner [Tue, 20 Feb 2024 12:09:41 +0000 (13:09 +0100)]
extensions-app: Fix service activation mix-up

Starting the D-Bus service should not pop-up a window by itself,
it should just register and wait for an explicit call to Activate().

The .desktop file on the other hand should fully activate the
app when using the Exec line.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/7423

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3202>

2 years agocomponents/networkAgent: Fix small mistake
Julian Sparber [Tue, 20 Feb 2024 10:55:06 +0000 (11:55 +0100)]
components/networkAgent: Fix small mistake

Fixes: c1ff00c01 ("notification: Use the same Source for showing system notifications")
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3200>

2 years agoUpdate Catalan translation
Quique Serrano [Mon, 19 Feb 2024 13:56:18 +0000 (13:56 +0000)]
Update Catalan translation

2 years agoUpdated Spanish translation
Daniel Mustieles [Mon, 19 Feb 2024 12:27:07 +0000 (13:27 +0100)]
Updated Spanish translation

2 years agoUpdate Slovenian translation
Matej Urbančič [Mon, 19 Feb 2024 10:09:32 +0000 (10:09 +0000)]
Update Slovenian translation

2 years agoUpdate Slovenian translation
Matej Urbančič [Mon, 19 Feb 2024 10:03:43 +0000 (10:03 +0000)]
Update Slovenian translation

2 years agoUpdate Lithuanian translation
Aurimas Černius [Sun, 18 Feb 2024 20:34:40 +0000 (20:34 +0000)]
Update Lithuanian translation

2 years agoUpdate Dutch translation
Nathan Follens [Sun, 18 Feb 2024 16:42:31 +0000 (16:42 +0000)]
Update Dutch translation

2 years agoUpdate Turkish translation
Emin Tufan Çetin [Sun, 18 Feb 2024 15:41:55 +0000 (15:41 +0000)]
Update Turkish translation

2 years agoUpdate Turkish translation
Sabri Ünal [Sun, 18 Feb 2024 09:23:01 +0000 (09:23 +0000)]
Update Turkish translation

2 years agoUpdate Norwegian Bokmål translation
Brage Fuglseth [Sat, 17 Feb 2024 22:25:01 +0000 (22:25 +0000)]
Update Norwegian Bokmål translation

2 years agoauthPrompt: Disregard smartcard status changes if VERIFICATION_IN_PROGRESS
Ray Strode [Mon, 15 May 2023 14:48:15 +0000 (10:48 -0400)]
authPrompt: Disregard smartcard status changes if VERIFICATION_IN_PROGRESS

commit c8bb45b41c3a13ef161103f649aa18938e028a70 introduced a new
verification state, VERIFICATION_IN_PROGRESS, to detect when the user
has already interacted with the authentication prompt, so the
prompt can rate limit the number of times the user can cancel
authentication attempts with the escape key (without also rate limiting
the number of times they can hit escape to go back to the clock without
interacting with the prompt).

That means there are now two states that represent the user actively
undergoing verification: VERIFYING and VERIFICATION_IN_PROGRESS.

It's inappropriate to reset the smartcard service if the user is
actively conversing with it. We try to check for that by looking at the
original verification state, VERIFYING, but we unfortunately, neglect
to account for the new VERIFICATION_IN_PROGRESS state.

The result is that if a user types their smartcard pin at the clock,
and then inserts their smartcard, the pin will get cleared instead of
used, and they have to retype it again.

This commit fixes the oversight, and allows users to again pre-type
their smartcard pin at the clock before inserting their smartcard.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2765>

2 years agoUpdate Czech translation
Daniel Rusek [Sat, 17 Feb 2024 13:58:20 +0000 (13:58 +0000)]
Update Czech translation